#include <stdio.h>
#include <stdlib.h>
#pragma warning(disable : 4996)
struct Person {
    char name[20];
    int age;
};

int main() {
    // 打开文件进行写入
    FILE *file = fopen("test.dat", "wb");
    if (file == NULL) {
        printf("无法打开文件。\n");
        return 1;
    }

    // 创建一个结构体实例
    struct Person person1 = {"Alice", 25};
    struct Person person2 = {"Bob", 30};

    // 将结构体写入文件
    size_t result = fwrite(&person1, sizeof(struct Person), 1, file);
    if (result != 1) {
        printf("写入结构体失败。\n");
        fclose(file);
        return 1;
    }

    result = fwrite(&person2, sizeof(struct Person), 1, file);
    if (result != 1) {
        printf("写入结构体失败。\n");
        fclose(file);
        return 1;
    }

    // 创建一个数组
    struct Person people[3] = {{"Charlie", 35}, {"David", 40}, {"Eve", 45}};

    // 将数组写入文件
    result = fwrite(people, sizeof(struct Person), 3, file);
    if (result != 3) {
        printf("写入数组失败。\n");
        fclose(file);
        return 1;
    }

    printf("数据已成功写入文件。\n");

    // 关闭文件
    fclose(file);

    return 0;
}
